Load Bounding for Implicit Parallelism
نویسندگان
چکیده
It is well known that exploiting parallelism beyond the available machine parallelism can lead to vastly increased resource requirements. Programs which can run in linear space under a sequential execution regime may require exponential space in the context of unrestricted parallelism. In this paper we present an efficient adaptive software solution for the problem of avoiding excessive parallelism when evaluating implicitly parallel functional programs. We give an informal proof for the effectiveness of our method and discuss its limitations. The solution and the proof are based on a compilation scheme mapping lazy functional programs onto message-passing parallel architectures. Our strategy is completely distributed and can be expected to scale well to large machine configurations.1
منابع مشابه
Population Size and Sampling Complexity in Genetic Algorithms
Determining an appropriate population size is an important task in the design of genetic algorithms and is closely related to the principle of implicit parallelism. In this paper, the problem of bounding the population size is formulated as that of minimization of sampling errors. Using techniques from computational learning theory, two lower bounds on the population size are established. The l...
متن کاملEfficient Implicit Parallel Patterns for Geographic Information System
With the data growth, the need to parallelize treatments become crucial in numerous domains. But for non-specialists it is still difficult to tackle parallelism technicalities as data distribution, communications or load balancing. For the geoscience domain we propose a solution based on implicit parallel patterns. These patterns are abstract models for a class of algorithms which can be custom...
متن کاملExploiting Parallelism in Functional Languages : a \paradigm-oriented" Approach
Deriving parallelism automatically from functional programs is simple in theory but very few practical implementations have been realised. Programs may contain too little or too much parallelism causing a degradation in performance. Such parallelism could be more eeciently controlled if parallel algorithmic structures (or skeletons) are used in the design of algorithms. A structure captures the...
متن کاملNIP: A Parallel Object-Oriented Computational Model
Implicitly parallel programming languages place the burden of exploiting and managing parallelism upon the compiler and runtime system, rather than on the programmer. This paper describes the design of NIP, a runtime system for supporting implicit parallelism in languages which combine both functional and objectoriented programming. NIP is designed for scaleable distributed memory systems inclu...
متن کاملImplicit Schemes and Parallel Computing in Unstructured Grid Cfd
The development of implicit schemes for obtaining steady state solutions to the Euler and Navier-Stokes equations on unstructured grids is outlined. Applications are presented that compare the convergence characteristics of various implicit methods. Next, the development of explicit and implicit schemes to compute unsteady flows on unstructured grids is discussed. Next, the issues involved in p...
متن کامل